package com.nightpiter.model.exceptions;

/**
 * superclass for all possible exceptions thrown during the MetroModel building
 * 
 * @author Eldar Abusalimov (eldar.abusalimov@gmail.com)
 */
@SuppressWarnings("serial")
public class BuilderException extends Exception {

	/**
	 * standard error message
	 */
	private static final String MESSAGE = "An exception occured during the building of the MetroModel. Seems like your XML file is corrupted";

	/**
	 * constructor without arguments
	 */
	public BuilderException() {
		super(MESSAGE);
	}

	/**
	 * @param detailMessage
	 */
	public BuilderException(String detailMessage) {
		super(MESSAGE + " : " + detailMessage);
	}

	/**
	 * @param throwable
	 */
	public BuilderException(Throwable throwable) {
		super(throwable);
	}

	/**
	 * @param detailMessage
	 * @param throwable
	 */
	public BuilderException(String detailMessage, Throwable throwable) {
		super(MESSAGE + " : " + detailMessage, throwable);
	}

}
